Version 0.9
------------



q3map
-----

-threads <number>
	Number of threads used to compile the map. For the fastest compile
	times the number of threads is set to the number of system processors.
-glview
	Write a .gl file of the bsp tree for debugging.
-v
	Output verbose information.
-draw
	Enable realtime debug drawing output.
-nowater
	Water, slime and lava brushes are not compiled and won't show up when running the map in Quake.
-noopt
	unused.
-nofill
	unused.
-nodetail
	Detail brushes are not compiled and won't show up when running the map in Quake.
-fulldetail
	Detail brushes will be treated as normal brushes.
-onlyents
	Only change the entities in a .bsp using a .ent file.
-onlytextures
	Only change the textures in a .bsp file.
-micro
	unused.
-nofog
	Visible surfaces that cross fog boundaries will not be split along the bound.
	This can cause visually incorrect fog in the map.
-nosubdivide
	Visible surfaces are not subdivided as required by shader tesselation.
	The shader parameter "tesssize" sets the tesselation of a surface.
-leaktest
	Only test the map for leaks. If a leak is found the compilation is stopped.
-verboseentities
	Output verbose information about entity sub-models.
-nocurves
	Curves are not compiled and won't show up when running the map in Quake.
-notjunc
	T-junctions are not fixed. This can cause tiny slits where a surface meets halfway another surface.
-expand
	Expands all the brush planes and saves a new map out to allow visual inspection of the clipping bevels
-tmpout
	Output files to a folder called "tmp".
-fakemap
	Write out a fakemap.map This map will contain a worldspawn entity with all the world brushes.
-samplesize <N>
	Set the lightmap pixel size to NxN units. Default 16x16.


q3map -vis
----------

-threads <number>
	Number of threads used to compile the map. For the fastest compile
	times the number of threads is set to the number of system processors.
-fast
	Only calculate a very loose visiblity list. It doesn't take much time to
	calculate but a lot more polygons will be drawn by the Q3 engine than necesary.
-merge
	Merge bsp leaves before calculating the visibility list. This will speed up
	the vis calculations but mostly more polygons will be drawn by the Q3 engine
	than necesary.
-nopassage
	Disable the passage visibility algorithm. The passage vis is faster and a bit more
	tight than the old algorithm.
-level
	unused.
-v
	Output verbose information.
-nosort
	Don't sort the portals on complexity. Sorting mostly speeds up visibility calculations
	because more complex portals can use information from less complex portals.
-saveprt
	Don't delete the .prt file after creating the visibility list.
-tmpin <path>
	Input files will be read from a folder called "tmp".
-tmpout <path>
	Output files will be written to a folder called "tmp".


q3map -light
------------

-threads <number>
	Number of threads used to compile the map. For the fastest compile
	times the number of threads is set to the number of system processors.
-area <scale>
	This scales the light intensity of area lights.
-point <scale>
	This scales the light intensity of point lights.
-notrace
	No light tracing is performed. As a result no shadows will be casted.
-patchshadows
	Enable patches casting shadows.
-novertex
	Don't calculate vertex lighting.
-nogrid
	Don't calculate light grid for dynamic model lighting.
-extra
	Take four samples per lightmap pixel and store the average light value of these
	four samples for the actual lightmap pixel.
	This super sampling is used for anti-aliasing.
-extrawide
	Just like -extra four samples per lightmap pixel are calculated. However the
	average of 12 samples is stored per lightmap pixel.
-samplesize <N>
	Set the lightmap pixel size to NxN units. Default 16x16.
-border
	Create a debugging border around the lightmap.
-v
	Output verbose information.
-nosurf
	unused.
-dump
	unused.


q3map -vlight
-------------

-threads <number>
	Number of threads used to compile the map. For the fastest compile
	times the number of threads is set to the number of system processors.
-area <scale>
	This scales the light intensity of area lights.
-point <scale>
	This scales the light intensity of point lights.
-novertex
	Don't calculate vertex lighting.
-nogrid
	Don't calculate light grid for dynamic model lighting.
-nostitching
	No polygon stitching before lighting.
-noalphashading
	Don't use alpha shading at all.
-nocolorshading
	Don't use colored alpha shading. The alpha channel will be used as if it were binary.
	The light goes through or not and does not change color.
-tracelight
	Use the "-light" light algorithm for all surface unless a surface
	uses a shader with the shader option "q3map_vlight".
-samplesize <N>
	Set the lightmap pixel size to NxN units. Default 16x16.
-v
	Output verbose information.



q3map shader options
--------------------


q3map_tracelight
	Surfaces using a shader with this option will always be lit with
	the "-light" light algorithm.
	Patches will not cast shadows at this surface unless the shader
	option q3map_patchshadows is used.

q3map_patchshadows
	Surfaces, being lit with the "-light" light algorithm and using a shader
	with this shader option will show shadows casted from patches.

q3map_vertexshadows
	By default no shadows are casted at vertex only lit surfaces (see surfaceparm
	pointlight). Also when running Quake III Arena in vertex lighting mode no
	shadows are casted at the surfaces. When using this shader option shadows
	*will* be casted at the surface when vertex lit. However sharp shadow edges
	won't be seen on the surface becuase light values are only calculated at
	the vertexes.

q3map_vertexscale <scale>
	The light value at the vertexes of a surface using a shader with this option
	are multiplied by the scale.

q3map_notjunc
	Surfaces using a shader with this option are not used for tjunction fixing.

q3map_vlight
	Surfaces using a shader with this option will always be lit with the "-vlight"
	algorithm when q3map is used with the options "-vlight -tracelight".

q3map_lightmapsamplesize <S>
	Surfaces using a shader with this shader option will use lightmaps with
	pixel size SxS
	This option can be used to produce high res shadows on certain surfaces 
	or can be used to reduce lightmap data where high res shadows are not required.

q3map_lightimage <image>
	Image to use for the light color of a surface light instead of
	the image(s) used by the shader

q3map_surfacelight <value>
	Sets the amount of light this surface emits.

q3map_lightsubdivide <value>
	A surface light is subdivided into a bunch of point lights for the
	actual lighting of the world. This parameter controls the space
	between those point lights. Default value is 999.

q3map_backsplash <percent> <distance>
	A surface light is also lit by itself using back splash point lights
	with a lower intensity. The <percent> parameter specifies the intensity
	percentage they use from the q3map_surfacelight <value> parameter.
	The <distance> parameter controls the distance of these back splash
	lights from the surface. You can set the <percent> to zero or a negative
	value to disable the back splash lights.

q3map_globaltexture
	When this option is set the texture is not aligned to the world.

q3map_backshader <shader>
	<shader> is the shader to be used at the back side of the surface.

q3map_flare <shader>
	Creates a flare using the specified <shader> at the center of the surface
	using a shader with this option.

light <value> 
	Old style flare specification always using the shader "flareshader".
	The <value> parameter is unused.

q3map_sun <red> <green> <blue> <intensity> <degrees> <elivation>
	Color will be normalized, so it doesn't matter what range you use.
	The intensity falls off with angle but not distance. A value of 100 is a fairly bright sun.
	degree of 0 = from the east, 90 = north, etc.
	elevation of 0 = sunrise/set, 90 = noon


surfaceparm pointlight
	Surfaces using a shader with this parameter will always be vertex lit
	This option can be used to reduce the lightmap data. Often used on surfaces
	that don't need any shadows.
